<?php


namespace app\model;

use think\Model;

class AdminUsers extends Model
{
    protected $table  = 'admin_users'; // 对应数据表

    public function getAllPermissions()
    {
        $permissions = [];
        foreach ($this->roles as $role) {
            $permissions = array_merge($permissions, $role->permissions->toArray());
        }
        return array_unique($permissions, SORT_REGULAR);
    }

    // 定义用户-角色的多对多关联
    public function roles()
    {
        return $this->belongsToMany(
            AdminRoles::class,     // 角色模型
            'admin_role_users', // 中间表
            'role_id',       // 中间表对应角色的字段
            'user_id'       // 中间表对应用户的字段
        );
    }
}